package com.hava.contentsale.web.controller;

import com.hava.contentsale.meta.ProductVO;
import com.hava.contentsale.meta.UserVO;
import com.hava.contentsale.service.ProductService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;

import javax.servlet.http.HttpSession;

/**
 * Created by yanfa on 2016/11/16.
 * R3 查看：点击展示中的每个内容的网格，进入查看界面，可以查看内容。
 * Guest可以查看内容，但是不会有任何操作的数据查询
 * 买家能够查看是否购买的数据查询
 * 卖家能够进行编辑的数据查询
 *
 * R4.3 用户已经购买过的内容不能重复购买。
 * 当为买家时，如果已经发生购买，则查询到的结果应当表明已经购买
 */
@Controller
public class ShowController {

    @Autowired
    ProductService productServiceImpl;

    @RequestMapping(value = "/show")
    public ModelAndView show_view(HttpSession httpSession,@RequestParam("id") long id)
    {
        System.out.println("Class ShowController Method show_view");
        //session
        System.out.println("[session.id]:" + httpSession.getId());
        UserVO userVO = (UserVO) httpSession.getAttribute("user");

        ModelAndView modelAndView = new ModelAndView("show");
        //当用户不为空时，返回用户信息
        if(userVO != null)
            modelAndView.addObject("user", userVO);

        ProductVO productVO = this.productServiceImpl.findOne(userVO,id);
        productVO.printProperties();
        modelAndView.addObject("product",productVO);
        return modelAndView;
    }
}
